home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / dgeqlf.z / dgeqlf
Text File  |  1996-03-14  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDGGGGEEEEQQQQLLLLFFFF((((3333FFFF))))                                                          DDDDGGGGEEEEQQQQLLLLFFFF((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DGEQLF - compute a QL factorization of a real M-by-N matrix A
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      SUBROUTINE DGEQLF( M, N, A, LDA, TAU, WORK, LWORK, INFO )
  13.  
  14.          INTEGER        INFO, LDA, LWORK, M, N
  15.  
  16.          DOUBLE         PRECISION A( LDA, * ), TAU( * ), WORK( LWORK )
  17.  
  18. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  19.      DGEQLF computes a QL factorization of a real M-by-N matrix A:  A = Q * L.
  20.  
  21.  
  22. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  23.      M       (input) INTEGER
  24.              The number of rows of the matrix A.  M >= 0.
  25.  
  26.      N       (input) INTEGER
  27.              The number of columns of the matrix A.  N >= 0.
  28.  
  29.      A       (input/output) DOUBLE PRECISION array, dimension (LDA,N)
  30.              On entry, the M-by-N matrix A.  On exit, if m >= n, the lower
  31.              triangle of the subarray A(m-n+1:m,1:n) contains the N-by-N lower
  32.              triangular matrix L; if m <= n, the elements on and below the
  33.              (n-m)-th superdiagonal contain the M-by-N lower trapezoidal
  34.              matrix L; the remaining elements, with the array TAU, represent
  35.              the orthogonal matrix Q as a product of elementary reflectors
  36.              (see Further Details).  LDA     (input) INTEGER The leading
  37.              dimension of the array A.  LDA >= max(1,M).
  38.  
  39.      TAU     (output) DOUBLE PRECISION array, dimension (min(M,N))
  40.              The scalar factors of the elementary reflectors (see Further
  41.              Details).
  42.  
  43.      WORK    (workspace/output) DOUBLE PRECISION array, dimension (LWORK)
  44.              On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  45.  
  46.      LWORK   (input) INTEGER
  47.              The dimension of the array WORK.  LWORK >= max(1,N).  For optimum
  48.              performance LWORK >= N*NB, where NB is the optimal blocksize.
  49.  
  50.      INFO    (output) INTEGER
  51.              = 0:  successful exit
  52.              < 0:  if INFO = -i, the i-th argument had an illegal value
  53.  
  54. FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
  55.      The matrix Q is represented as a product of elementary reflectors
  56.  
  57.         Q = H(k) . . . H(2) H(1), where k = min(m,n).
  58.  
  59.      Each H(i) has the form
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDGGGGEEEEQQQQLLLLFFFF((((3333FFFF))))                                                          DDDDGGGGEEEEQQQQLLLLFFFF((((3333FFFF))))
  71.  
  72.  
  73.  
  74.         H(i) = I - tau * v * v'
  75.  
  76.      where tau is a real scalar, and v is a real vector with
  77.      v(m-k+i+1:m) = 0 and v(m-k+i) = 1; v(1:m-k+i-1) is stored on exit in
  78.      A(1:m-k+i-1,n-k+i), and tau in TAU(i).
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.